﻿using System;
using AdAggregator.Advertisement;
using AdAggregator.SearchData;
using AdAggregator.Website;

namespace AdAggregator.Parser
{
    public interface IParser<in TSearchData, TAdvertisement> where TSearchData : ISearchData 
                                                                where TAdvertisement : IAdvertisement
    {
        String Name { get; }
        IParseResult<TAdvertisement> Parse(TSearchData searchData, IAdvertisementSource<TAdvertisement> website);
        TAdvertisement ParseSingleAd(String adUrl, IAdvertisementSource<TAdvertisement> website);
    }
}
